package com.ruoyi.generator.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 【请填写功能名称】对象 form_field
 *
 * @author ruoyi
 * @date 2022-02-15
 */
public class FormField extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键自增 */
    private Long id;

    /** 表单ID */
    @Excel(name = "表单ID")
    private Long formId;

    /** 字段名称 */
    @Excel(name = "字段名称")
    private String fieldName;

    /** 字段数据库名称 */
    @Excel(name = "字段数据库名称")
    private String fieldDbName;

    /** 字段类型 DD:FIELD_TYPE */
    @Excel(name = "字段类型 DD:FIELD_TYPE")
    private String fieldType;

    /** 字段数据库存储类型 */
    @Excel(name = "字段数据库存储类型")
    private String fieldDbType;

    /** 字段长度 */
    @Excel(name = "字段长度")
    private Long fieldLength;

    /** 字段精度（小数点位数） */
    @Excel(name = "字段精度", readConverterExp = "小=数点位数")
    private Long fieldPrecision;

    /** 是否必填 0=否；1=是 */
    @Excel(name = "是否必填 0=否；1=是")
    private Integer required;

    /** 字段JSON */
    @Excel(name = "字段JSON")
    private String fieldJson;

    /** 字段排序 */
    @Excel(name = "字段排序")
    private Long seqNo;

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }
    public void setFormId(Long formId)
    {
        this.formId = formId;
    }

    public Long getFormId()
    {
        return formId;
    }
    public void setFieldName(String fieldName)
    {
        this.fieldName = fieldName;
    }

    public String getFieldName()
    {
        return fieldName;
    }
    public void setFieldDbName(String fieldDbName)
    {
        this.fieldDbName = fieldDbName;
    }

    public String getFieldDbName()
    {
        return fieldDbName;
    }
    public void setFieldType(String fieldType)
    {
        this.fieldType = fieldType;
    }

    public String getFieldType()
    {
        return fieldType;
    }
    public void setFieldDbType(String fieldDbType)
    {
        this.fieldDbType = fieldDbType;
    }

    public String getFieldDbType()
    {
        return fieldDbType;
    }
    public void setFieldLength(Long fieldLength)
    {
        this.fieldLength = fieldLength;
    }

    public Long getFieldLength()
    {
        return fieldLength;
    }
    public void setFieldPrecision(Long fieldPrecision)
    {
        this.fieldPrecision = fieldPrecision;
    }

    public Long getFieldPrecision()
    {
        return fieldPrecision;
    }
    public void setRequired(Integer required)
    {
        this.required = required;
    }

    public Integer getRequired()
    {
        return required;
    }
    public void setFieldJson(String fieldJson)
    {
        this.fieldJson = fieldJson;
    }

    public String getFieldJson()
    {
        return fieldJson;
    }
    public void setSeqNo(Long seqNo)
    {
        this.seqNo = seqNo;
    }

    public Long getSeqNo()
    {
        return seqNo;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("formId", getFormId())
            .append("fieldName", getFieldName())
            .append("fieldDbName", getFieldDbName())
            .append("fieldType", getFieldType())
            .append("fieldDbType", getFieldDbType())
            .append("fieldLength", getFieldLength())
            .append("fieldPrecision", getFieldPrecision())
            .append("required", getRequired())
            .append("fieldJson", getFieldJson())
            .append("seqNo", getSeqNo())
            .toString();
    }
}
